// 通俗理解:泛型就是解决类接口方法的复用性、以及对不特定数据类型的支持(类型校验)

// 以这个函数为例，我们指定了函数必须返回字符串类型
String getData(String value) {
  return value;
}

//  但是现在我想让返回的类型可以是 字符串或者整数，其他类型不可以。该怎么写呢？
// 这就需要用到泛型了，语法大概就是这样，可以自定义，不要和我一样写T
T getData2<T>(T value) {
  return value;
}

void main(){

  // 调用泛型也很简单，在函数名和小括号之间加个尖括号然后写上类型名称即可
  // getData2<String>(2);//爆红，因为你指定了参数为字符串类型
  getData2<String>('hello');
}
